package com.hz.ruoyilgorder.config;

import com.hz.rouyigonggong.domain.LgDeliveryInfo;
import com.hz.rouyigonggong.domain.dto.LgDeliveryInfoDTO;

public class LgDeliveryInfoConverter {

    /**
     * 将 LgDeliveryInfo 转换为 LgDeliveryInfoDTO
     */
    public static LgDeliveryInfoDTO toDTO(LgDeliveryInfo entity) {
        if (entity == null) {
            return null;
        }
        LgDeliveryInfoDTO dto = new LgDeliveryInfoDTO();
        dto.setId(entity.getId());
        dto.setOrderNumber(entity.getOrderNumber());
        dto.setColdId(entity.getColdId());
        dto.setDriverId(entity.getDriverId());
        dto.setVehicleId(entity.getVehicleId());
        dto.setBuyerPhone(entity.getBuyerPhone());
        dto.setBuyerName(entity.getBuyerName());
        dto.setIsCompleted(entity.getIsCompleted());
        dto.setDeliveryDuration(entity.getDeliveryDuration());
        dto.setDeliveryMin(entity.getDeliveryMin());
        dto.setDeliveryMax(entity.getDeliveryMax());
        dto.setCreateBy(entity.getCreateBy());
        dto.setUpdateBy(entity.getUpdateBy());
        dto.setCreateTime(entity.getCreateTime());
        dto.setUpdateTime(entity.getUpdateTime());
        dto.setDeleteStatus(entity.getDeleteStatus());
        dto.setParams(entity.getParams());

        // DTO 额外字段，暂时设为空或默认值（可后续填充）
        dto.setDriverName(null);
        dto.setVehicleType(null);
        dto.setVehicleNumber(null);
        dto.setLicensePlate(null);
        dto.setDriverPhone(null);
        return dto;
    }

    /**
     * 将 LgDeliveryInfoDTO 转换为 LgDeliveryInfo
     */
    public static LgDeliveryInfo toEntity(LgDeliveryInfoDTO dto) {
        if (dto == null) {
            return null;
        }
        LgDeliveryInfo entity = new LgDeliveryInfo();
        entity.setId(dto.getId());
        entity.setOrderNumber(dto.getOrderNumber());
        entity.setColdId(dto.getColdId());
        entity.setDriverId(dto.getDriverId());
        entity.setVehicleId(dto.getVehicleId());
        entity.setBuyerPhone(dto.getBuyerPhone());
        entity.setBuyerName(dto.getBuyerName());
        entity.setIsCompleted(dto.getIsCompleted());
        entity.setDeliveryDuration(dto.getDeliveryDuration());
        entity.setDeliveryMin(dto.getDeliveryMin());
        entity.setDeliveryMax(dto.getDeliveryMax());
        entity.setCreateBy(dto.getCreateBy());
        entity.setUpdateBy(dto.getUpdateBy());
        entity.setCreateTime(dto.getCreateTime());
        entity.setUpdateTime(dto.getUpdateTime());


        // DTO 额外字段不需要存入数据库，忽略
        return entity;
    }
}
